Products comprising software and hardware may need to be upgraded from time to time with regards to, by way of example and not by way of limitation, new bug fixes and feature enhancements and additions. In some networks such as, by way of example and not by way of limitation, an ad-hoc network there is no known solution to upgrade products in a distributed fashion using controlled authenticated peer-to-peer mechanisms without going offline or connecting to the outside world (i.e., outside the ad hoc network) via the Internet or another network. The present invention applies to an ad hoc communication network or a traditional fixed network. Ad hoc networks will be addressed herein as exemplary networks for advantageously employing the method and system of the present invention.
Currently one can achieve upgrading nodes in an ad hoc network by either connecting to the remote products via Internet (or another network) and applying software upgrades or by bringing the products to a vendor location and performing an offline upgrade. Both such solutions may be costly and time consuming. Moreover, such solutions may not work well in an ad-hoc network where products may be purchased and deployed in a distributed fashion. This situation may be exacerbated by the possibility that there is no Internet connectivity to the product from a vendor location or the bandwidth available for such a remote connection for delivery is extremely expensive.
There is a need for a method and system for distributing an upgrade among nodes in an ad hoc network.